package com.ruoyi.warehouse.service;

import java.util.List;

import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.warehouse.domain.FhjlShippingRecordForm;
import org.springframework.web.bind.annotation.PathVariable;

/**
 * 成品发货Service接口
 * 
 * @author ruoyi
 * @date 2024-07-04
 */
public interface IFhjlShippingRecordFormService 
{
    /**
     * 查询成品发货
     * 
     * @param fhCode 成品发货主键
     * @return 成品发货
     */
    public FhjlShippingRecordForm selectCpkcFnishedProductInventoryCpCode(String fhCode);

    /**
     * 查询成品发货
     *
     * @param cpCode 成品发货主键
     * @return 成品发货
     */
    public FhjlShippingRecordForm selectTj(String cpCode);

    /**
     * 查询成品发货列表
     * 
     * @param fhjlShippingRecordForm 成品发货
     * @return 成品发货集合
     */
    public List<FhjlShippingRecordForm> selectFhjlShippingRecordFormList(FhjlShippingRecordForm fhjlShippingRecordForm);

    /**
     * 新增成品发货
     * 
     * @param fhjlShippingRecordForm 成品发货
     * @return 结果
     */
    public int insertFhjlShippingRecordForm(FhjlShippingRecordForm fhjlShippingRecordForm);

    /**
     * 修改成品发货
     * 
     * @param fhjlShippingRecordForm 成品发货
     * @return 结果
     */
    public int updateFhjlShippingRecordForm(FhjlShippingRecordForm fhjlShippingRecordForm);

    /**
     * 批量删除成品发货
     * 
     * @param fhCodes 需要删除的成品发货主键集合
     * @return 结果
     */
    public int deleteFhjlShippingRecordFormByFhCodes(String[] fhCodes);

    /**
     * 删除成品发货信息
     * 
     * @param fhCode 成品发货主键
     * @return 结果
     */
    public int deleteFhjlShippingRecordFormByFhCode(String fhCode);

    /**
     * 产品发货审批
     * */
    public int examine(String fhCode);

    /**
     * 产品发货撤销
     * */
    public int cancel(String fhCode);
}
